package com.lutzyt.delivery.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lutzyt.delivery.bean.PermissionMenu;

import java.util.List;

/**
 *
 */
public interface PermissionMenuService extends IService<PermissionMenu> {

  /**
   * 通过ID查询单个
   *
   * @param id ID
   * @return {@link PermissionMenu}
   */
  PermissionMenu findById(Integer id);

  /**
   * 分页查询
   *
   * @param pageNum  页号
   * @param pageSize 每页大小
   * @return {@link PermissionMenu}
   */
  IPage<PermissionMenu> findByPage(int pageNum, int pageSize);

  /**
   * 新增
   *
   * @param permissionMenu 权限菜单映射对象
   */
  void insert(PermissionMenu permissionMenu);

  /**
   * 修改
   *
   * @param permissionMenu 权限菜单映射对象
   */
  void update(PermissionMenu permissionMenu);

  /**
   * 通过ID删除单个
   *
   * @param id ID
   */
  void deleteById(Integer id);

  /**
   * 根据权限ids获取菜单ids
   * @param permissionIds
   * @return 菜单ids list
   */
  List<Integer> findMenuIdByIds(List<Integer> permissionIds);
}